home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / mymenv-notify 2.0 / Readme < prev    next >
Text File  |  1996-06-09  |  3KB  |  66 lines

  1. What:  utility C++ functions/classes for a few very common Mac chores
  2.  
  3. Highlights:
  4.  - posting synchronous _and_ asynchronous notifications
  5.  - printf() in an alert box
  6.  - "magic" conversion from a C to Pascal string
  7.  - do_well() macro to make sure a "system call" went well
  8.  - handling of mandatory Apple Events: OpenApplication, {Open|Print}Document, Quit:
  9.     registering C++ classes as recipients of AppleEvents
  10. - with the complete source and comments/explanations
  11.  
  12. Keywords: notification, AppleEvent, utility, registration, programming support, environment
  13.  
  14. Contents:
  15.   Readme    - this file
  16.   libmac.a - library (compiled for a PowerMac)
  17.   libmac.pi - CW9 project to build it
  18.   mymenv.h - interfaces of the utility classes
  19.   mymenv.cc - implementation code
  20.   notify.cc
  21.   vmymenv.cc - verification code
  22.   vservice++.pi - project to run it
  23.   myAEvents.h  - a simple code to handle the mandatory AppleEvents
  24.   myAEvents.cc
  25.   vmyAEvents.cc - verification code to test Open{Application|OpenDocument(s)}
  26.   vmyAEvents.π       and Quit events
  27.   vmyAEvents.π.rsrc
  28. Note: The environment is used in most of my Mac software (incl. the one submitted to the Info-Mac)
  29. Language: C++, CodeWarrior9
  30. System: System 7.1 - 7.5.3, binaries are made for a PowerMac.
  31. Comments to: oleg@ponder.csci.unt.edu, oleg@unt.edu
  32. Version 2.0, June 1996
  33.  
  34. New in version 2.0
  35.  - renamed myenv.* into mymenv.* to avoid name conflicts with my (UNIX) 
  36.      C++ environment
  37.  - renamed message()/_error() into alert()/_die() for the same reason: the former
  38.      (declared in my advanced C++ i/o package) write into a SIOUX console; the latter
  39.     functions display an alert.
  40.  - "magic" conversion from C to Pascal string
  41.  - Handling of Mandatory Apple Events OpenApplication, {Open|Print}Document, Quit
  42.  - Now works under CW9 (the previous version was compiled with Symantec C++ 6.0)
  43.  
  44.  
  45. Explanation:
  46. notify.c: The set of functions lets a (possibly, background) application post
  47. synchronous or asynchronous notification messages to the user.
  48. Synchronous posting means that the posting function does not return until
  49. the notification message is displayed and the user dismisses it.
  50. In asynchronous mode, the posting function returns as soon as the
  51. message is queued into the notification queue (but not yet displayed!).
  52. The functions use the Notification Manager and the EventManager (via
  53. function sleep() defined elsewhere in the standard env to relinquish
  54. the CPU control while sleeping). Circular queue is used to store
  55. asynchronous notification requests.
  56.  
  57.  "magic" conversion from C to Pascal string: see
  58. http://mozart.compsci.com/~oleg/ftp/c++-digest/type_conv_magic.txt
  59. ftp://replicant.csci.unt.edu/pub/oleg/c++-digest/type_conv_magic.txt
  60.  
  61. Handling of AppleEvents: uses a trick to relay AppleEvents to (abstract) C++ classes
  62. for processing
  63.  
  64.     If you need further information or details, please mail me. If you want to see more
  65. functionality added, mail me too.
  66.